import java.util.HashMap;
import java.util.Map;

public class Solution594 {
    public int findLHS(int[] nums) {
        int ans=0;
        Map<Integer,Integer> map=new HashMap<>();
        for (int num : nums) {
            int t=map.getOrDefault(num,0);
            map.put(num,t+1);
            int a=map.getOrDefault(num-1,0);
            if (a!=0 && a+t+1>ans){
                ans=a+t+1;
            }
            int b=map.getOrDefault(num+1,0);
            if (b!=0 && b+t+1>ans){
                ans=b+t+1;
            }
        }
        return ans;
    }

    public static void main(String[] args) {
        System.out.println(new Solution594().findLHS(new int[]{1,3,2,2,5,2,3,7}));
    }
}
